home *** CD-ROM | disk | FTP | other *** search
/ C/C++ Users Group Library 1996 July / C-C++ Users Group Library July 1996.iso / listings / v_12_06 / gotwals / fact1.cpp < prev    next >
C/C++ Source or Header  |  1994-04-01  |  705b  |  29 lines

  1. ====================== Listing 1 ======================
  2. /* fact1.cpp
  3.    demo factorial program
  4.    ---------------------- */
  5. #include <stdio.h>
  6. #include <string.h>
  7. #include "largeint.h"
  8. #include "misc.h"
  9.  
  10. int main() {
  11.    const int bufSize = 50000; // max decimal digits
  12.    char buf[bufSize];
  13.    int choice;
  14.    LargeInt result = 1;
  15.  
  16.    printf("Calculate factorial of: ");
  17.    scanf("%d", &choice);
  18.    for (int i = 2; i <= choice; i++)
  19.       result *= i;
  20.    if (result.binToDec(buf, bufSize) != NULL) {
  21.       printf("\n%d! = \n%s\n", choice, buf);
  22.       printf("\nwhich has %d digits\n", strlen(buf));
  23.    }
  24.    else
  25.       printf("Output string buffer too small\n");
  26.  
  27.    return 0;
  28. }
  29.